package com.example.grade;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // 创建一个GradeManager对象来管理学生成绩
        GradeManager gradeManager = new GradeManager();
        Scanner scanner = new Scanner(System.in);

        while (true) {
            System.out.println("\n===== 欢迎使用学生成绩管理系统 =====");
            System.out.println("请选择操作：");
            System.out.println("1.记录学生成绩");
            System.out.println("2.查询学生成绩");
            System.out.println("3.统计课程成绩");
            System.out.println("4.退出系统");
            System.out.print("请输入选项序号：");

            int choice = scanner.nextInt();
            scanner.nextLine(); // 清除缓冲区
            // 根据用户选择的序号执行不同的操作
            switch (choice) {
                case 1:
                    System.out.println("【记录学生成绩】");
                    System.out.println("===== 记录学生成绩 =====");
                    System.out.print("请输入学生姓名：");
                    String studentName = scanner.nextLine();
                    System.out.print("请输入学生学号：");
                    String studentId = scanner.nextLine();
                    System.out.print("请输入课程名称：");
                    String courseName = scanner.nextLine();
                    System.out.print("请输入成绩（0-100）：");
                    int grade = scanner.nextInt();
                    scanner.nextLine(); // 清除缓冲区
                    gradeManager.addGrade(studentName, studentId, courseName, grade);
                    break;
                case 2:
                    System.out.println("【查询学生成绩】");
                    System.out.println("===== 查询学生成绩 =====");
                    System.out.println("请选择查询方式:");
                    System.out.println("1.按学生姓名查询");
                    System.out.println("2.按学生学号查询");
                    System.out.println("3.按课程名称查询");
                    System.out.print("请输入选项序号：");
                    int queryChoice = scanner.nextInt();
                    scanner.nextLine(); // 清除缓冲区
                    System.out.print("请输入查询值：");
                    String queryValue = scanner.nextLine();
                    gradeManager.queryGrade(queryChoice == 1 ? "姓名" : queryChoice == 2 ? "学号" : "课程", queryValue);
                    break;
                case 3:
                    System.out.println("【统计课程成绩】");
                    System.out.println("===== 统计课程成绩 =====");
                    System.out.print("请输入课程名称：");
                    String course = scanner.nextLine();
                    gradeManager.statisticsGrade(course);
                    break;
                case 4:
                    System.out.println("【退出系统界面】");
                    System.out.println("感谢使用学生成绩管理系统，再见！");
                    scanner.close();
                    return;
                default:
                    System.out.println("无效选项，请重新输入！");
            }
        }
    }
}
